package com.smartpro.mis.modular.system.model;

import java.io.Serializable;

import com.baomidou.mybatisplus.enums.IdType;
import java.math.BigDecimal;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.activerecord.Model;
import java.io.Serializable;

/**
 * <p>
 * 商品表
 * </p>
 *
 * @author mengiy123
 * @since 2019-04-10
 */
public class Product extends Model<Product> {

    private static final long serialVersionUID = 1L;

    /**
     * 商品id
     */
    @TableId(value = "productID", type = IdType.AUTO)
    private Integer productID;
    /**
     * 删除标记,0是1否
     */
    private Integer isDeleted;
    /**
     * 新建时间
     */
    private String createTime;
    /**
     * 修改时间
     */
    private String modifyTime;
    /**
     * 操作员id
     */
    private Integer operatorID;
    /**
     * 商品名称
     */
    private String name;
    /**
     * 商品描述
     */
    private String description;
    /**
     * 商品小图片
     */
    private String smallPicture;
    /**
     * 商品大图片
     */
    private String bigPicture;
    /**
     * 商品宣传链接
     */
    private String productURL;
    /**
     * 商品海报
     */
    private String poster;
    /**
     * 是否置于微信首页
     */
    private Integer onHomepage;
    /**
     * 显示顺序
     */
    private Integer sequence;
    /**
     * 是否置于Banner
     */
    private Integer onBanner;
    /**
     * 商品分组ID
     */
    private Integer classID;
    /**
     * 售卖类型,0正品1试用2拓客
     */
    private Integer saleType;
    /**
     * 合作机构名称
     */
    private String madeBy;
    /**
     * 下架时刻
     */
    private String offlineTime;
    /**
     * 标签列表
     */
    private String tags;

    /**
     * 是否团购
     */
    private Integer isGroupBuy;
    /**
     * 是否邮寄
     */
    private Integer isPost;



    /**
     * 是否可推广
     */
    private Integer isDistribution;


    /**
     * 购买结果链接
     */
    private String resultURL;
    /**
     * 是否允许退款
     */
    private Integer canRefund;
    /**
     * 最迟退款时刻
     */
    private String latestRefundTime;
    /**
     * 购买多少天内可退款
     */
    private Integer refundDays;
    /**
     * 是否立刻发放绩效
     */
    private Integer issueImme;
    /**
     * 绩效发放时刻
     */
    private String issueTime;
    /**
     * 购买多少天后发放绩效
     */
    private Integer issueDays;
    /**
     * 是否线下发放绩效
     */
    private Integer isIssueOffline;

    public void setOnHomepage(Integer onHomepage) {
        this.onHomepage = onHomepage;
    }

    public Integer getStatus() {
        return status;
    }

    public void setStatus(Integer status) {
        this.status = status;
    }

    public Integer getNumberOfMember() {
        return numberOfMember;
    }

    public void setNumberOfMember(Integer numberOfMember) {
        this.numberOfMember = numberOfMember;
    }

    public Integer getDuration() {
        return duration;
    }

    public void setDuration(Integer duration) {
        this.duration = duration;
    }

    /**
     * 商品状态
     */
    private Integer status;

    /**
     * 几人团
     */
    private Integer numberOfMember;
    /**
     * 团购小时数
     */
    private Integer duration;


    public Integer getProductID() {
        return productID;
    }

    public void setProductID(Integer productID) {
        this.productID = productID;
    }

    public Integer getIsDeleted() {
        return isDeleted;
    }

    public void setIsDeleted(Integer isDeleted) {
        this.isDeleted = isDeleted;
    }

    public String getCreateTime() {
        return createTime;
    }

    public void setCreateTime(String createTime) {
        this.createTime = createTime;
    }

    public String getModifyTime() {
        return modifyTime;
    }

    public void setModifyTime(String modifyTime) {
        this.modifyTime = modifyTime;
    }

    public Integer getOperatorID() {
        return operatorID;
    }

    public void setOperatorID(Integer operatorID) {
        this.operatorID = operatorID;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getDescription() {
        return description;
    }

    public void setDescription(String description) {
        this.description = description;
    }

    public String getSmallPicture() {
        return smallPicture;
    }

    public void setSmallPicture(String smallPicture) {
        this.smallPicture = smallPicture;
    }

    public String getBigPicture() {
        return bigPicture;
    }

    public void setBigPicture(String bigPicture) {
        this.bigPicture = bigPicture;
    }

    public String getProductURL() {
        return productURL;
    }

    public void setProductURL(String productURL) {
        this.productURL = productURL;
    }

    public String getPoster() {
        return poster;
    }

    public void setPoster(String poster) {
        this.poster = poster;
    }

    public Integer getOnHomepage() {
        return onHomepage;
    }

    public void setOnHomepage(int onHomepage) {
        this.onHomepage = onHomepage;
    }

    public Integer getSequence() {
        return sequence;
    }

    public void setSequence(Integer sequence) {
        this.sequence = sequence;
    }

    public Integer getOnBanner() {
        return onBanner;
    }

    public void setOnBanner(Integer onBanner) {
        this.onBanner = onBanner;
    }

    public Integer getClassID() {
        return classID;
    }

    public void setClassID(Integer classID) {
        this.classID = classID;
    }

    public Integer getSaleType() {
        return saleType;
    }

    public void setSaleType(Integer saleType) {
        this.saleType = saleType;
    }

    public String getMadeBy() {
        return madeBy;
    }

    public void setMadeBy(String madeBy) {
        this.madeBy = madeBy;
    }

    public String getOfflineTime() {
        return offlineTime;
    }

    public void setOfflineTime(String offlineTime) {
        this.offlineTime = offlineTime;
    }

    public String getTags() {
        return tags;
    }

    public void setTags(String tags) {
        this.tags = tags;
    }

    public Integer getIsGroupBuy() {
        return isGroupBuy;
    }

    public void setIsGroupBuy(Integer isGroupBuy) {
        this.isGroupBuy = isGroupBuy;
    }

    public Integer getIsPost() {
        return isPost;
    }

    public void setIsPost(Integer isPost) {
        this.isPost = isPost;
    }

    public String getResultURL() {
        return resultURL;
    }

    public void setResultURL(String resultURL) {
        this.resultURL = resultURL;
    }

    public Integer getCanRefund() {
        return canRefund;
    }

    public void setCanRefund(Integer canRefund) {
        this.canRefund = canRefund;
    }

    public String getLatestRefundTime() {
        return latestRefundTime;
    }

    public void setLatestRefundTime(String latestRefundTime) {
        this.latestRefundTime = latestRefundTime;
    }

    public Integer getRefundDays() {
        return refundDays;
    }

    public void setRefundDays(Integer refundDays) {
        this.refundDays = refundDays;
    }

    public Integer getIssueImme() {
        return issueImme;
    }

    public void setIssueImme(Integer issueImme) {
        this.issueImme = issueImme;
    }

    public String getIssueTime() {
        return issueTime;
    }

    public void setIssueTime(String issueTime) {
        this.issueTime = issueTime;
    }

    public Integer getIssueDays() {
        return issueDays;
    }

    public void setIssueDays(Integer issueDays) {
        this.issueDays = issueDays;
    }

    public Integer getIsIssueOffline() {
        return isIssueOffline;
    }

    public void setIsIssueOffline(Integer isIssueOffline) {
        this.isIssueOffline = isIssueOffline;
    }

    public Integer getIsDistribution() {
        return isDistribution;
    }

    public void setIsDistribution(Integer isDistribution) {
        this.isDistribution = isDistribution;
    }
    @Override
    protected Serializable pkVal() {
        return this.productID;
    }

    @Override
    public String toString() {
        return "Product{" +
        "productID=" + productID +
        ", isDeleted=" + isDeleted +
        ", createTime=" + createTime +
        ", modifyTime=" + modifyTime +
        ", operatorID=" + operatorID +
        ", name=" + name +
        ", description=" + description +
        ", smallPicture=" + smallPicture +
        ", bigPicture=" + bigPicture +
        ", productURL=" + productURL +
        ", poster=" + poster +
        ", onHomepage=" + onHomepage +
        ", sequence=" + sequence +
        ", onBanner=" + onBanner +
        ", classID=" + classID +
        ", saleType=" + saleType +
        ", madeBy=" + madeBy +
        ", offlineTime=" + offlineTime +
        ", tags=" + tags +
         ", isDistribution=" + isDistribution +
        ", isGroupBuy=" + isGroupBuy +
        ", isPost=" + isPost +
        ", resultURL=" + resultURL +
        ", canRefund=" + canRefund +
        ", latestRefundTime=" + latestRefundTime +
        ", refundDays=" + refundDays +
        ", issueImme=" + issueImme +
        ", issueTime=" + issueTime +
        ", issueDays=" + issueDays +
        ", isIssueOffline=" + isIssueOffline +
                ", status=" + status +
                ", numberOfMember=" + numberOfMember +
                ", duration=" + duration +
        "}";
    }
}
